Automatic location placement system

ABSTRACT

A method of automatically moving, by an automatic location placement system, a marine vessel includes receiving, by a central processing unit, from a vision ranging photography system, at least one optical feed including data providing a mapping of an environment surrounding a marine vessel. The method includes displaying, by the central processing unit, on a touch screen monitor, the mapping of the environment. The method includes receiving, by the central processing unit, from the touch screen monitor, target location data. The method includes directing, by the central processing unit, at least one element of a propulsion system of the marine vessel, to move the marine vessel to the targeted location, using the mapping.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.17/865,825, filed on Jul. 15, 2022, entitled “Automatic LocationPlacement System,” which application is a continuation of U.S. patentapplication Ser. No. 17/697,266, filed on Mar. 17, 2022, entitled“Automatic Location Placement System,” which application is acontinuation of U.S. patent application Ser. No. 17/233,666, filed onApr. 19, 2021, entitled “Automatic Location Placement System,” whichapplication is a continuation of U.S. patent application Ser. No.16/398,721, filed on Apr. 30, 2019, entitled, “Automatic LocationPlacement System,” now U.S. Pat. No. 11,029,686, issued on Jun. 8, 2021;which application is a continuation of U.S. patent application Ser. No.15/717,526, filed on Sep. 27, 2017, entitled, “Automatic LocationPlacement System,” now U.S. Pat. No. 10,281,917, issued on May 7, 2019;which is a continuation of U.S. patent application Ser. No. 15/479,502,filed on Apr. 5, 2017, entitled, “Automatic Location Placement System,”now U.S. Pat. No. 9,778,657 B2, issued on Oct. 3, 2017; which is acontinuation of International Pat. App. No. PCT/IB2017/000325, filed onMar. 29, 2017, entitled, “An Automatic Location Placement System”; whichclaims benefit of priority to U.S. Pat. App. No. 62/314,625, filed onMar. 29, 2016, entitled, “Automatic Location Placement System”. U.S.patent application Ser. No. 15/479,502 filed on Apr. 5, 2017, entitled,“Automatic Location Placement System,” now U.S. Pat. No. 9,778,657 B2,issued on Oct. 3, 2017; which is a continuation of U.S. patentapplication Ser. No. 14/904,086, filed on Jan. 9, 2016, entitled, “AProgrammable Automatic Docking System”; which is a U.S. National StageEntry of International Pat. App. No. PCT/US2014/040227, filed on May 30,2014, entitled “A Programmable Automatic Docking System”; which is acontinuation of U.S. patent application Ser. No. 13/939,052, filed onJul. 10, 2013, entitled “Programmable Automatic Docking System,” nowU.S. Pat. No. 8,622,778 B2, issued on Jan. 7, 2014; which is acontinuation-in-part of U.S. patent application Ser. No. 13/590,901,filed on Aug. 21, 2012, entitled “Automatic Docking System”; which is acontinuation-in-part of U.S. patent application Ser. No. 12/950,990,filed on Nov. 19, 2010.

BACKGROUND

The methods and systems described herein relates generally to automaticdocking and marine vessel collision avoidance systems preferably for amarine vessel, and more particularly to an automatic location placementsystem between a powered marine vessel and a dock or external object.

To maneuverer a large marine vessel to a desired location is a preciseoperation, which may cause damage to the marine vessel and thesurrounding areas when relying on the judgment of an operator.Maintaining the final location of the marine vessel conventionallyrequires the aid of multiple securing devices. Dangerous weatherconditions such as wind, water currents, fog and darkness, highlyincrease the risk associated with the moving operation.

Previous docking systems have typically required additional aids toassist in measuring the effects of these variables in order to providevisual aids to assist an operator's judgment to manually move the marinevessel to a desired location. However, the maneuvering of a marinevessel in congested areas typically requires a skilled operator and manyassistants to assist with maneuvering. Conventional systems do nottypically provide interactive systems for viewing an area surrounding amarine vessel or for receiving instructions for maneuvering the marinevessels via an interactive system without human assistance. Furthermore,the larger a marine vessel, the greater the risk that exists duringconventional maneuvering, especially in a congested area, therebyresulting in a greater need for skilled operators, local harbor pilots,multiple assistants, and tugboats.

SUMMARY

The methods and systems described herein relate generally to anautomatic location placement system between a powered marine vessel anda dock or external object. An automatic location placement system mayincorporate a touch screen interactive monitor displaying an overlay ofthe geometries of the situation at hand over an optical feed from avision system enabling the operator to select a targeted location on theinteractive monitor.

In one aspect, an automatic location placement system includes a visionranging photograph system generating at least one optical feed; at leastone infrared vision system; at least one ranger laser scanner; at leastone inertial measurement unit; at least one global positioning systemunit; a touch screen control monitor; a propulsion system of a marinevessel including at least one thruster, at least one drive system, andat least one actuator; and a central processing unit located on themarine vessel and operatively connected to the propulsion system, thecentral processing unit: (i) receiving, from the vision rangingphotography system, the at least one optical feed, the feed includingdata providing a mapping of an environment surrounding the marinevessel; (ii) displaying, on a touch screen monitor, the mapping of theenvironment; (iii) receiving, from the touch screen monitor, targetlocation data; and (iv) directing, by the central processing unit, atleast one element of the propulsion system of the marine vessel, to movethe marine vessel to the targeted location, using the mapping.

In another aspect, a method of automatically moving, by an automaticlocation placement system, a marine vessel includes receiving, by acentral processing unit, from a vision ranging photography system, atleast one optical feed including data providing a mapping of anenvironment surrounding a marine vessel; displaying, by the centralprocessing unit, on a touch screen monitor, the mapping of theenvironment; receiving, by the central processing unit, from the touchscreen monitor, target location data; and directing, by the centralprocessing unit, at least one element of a propulsion system of themarine vessel, to move the marine vessel to the targeted location, usingthe mapping.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Certain objects, aspects, features, and advantages of the disclosurewill become more apparent and better understood by referring to thefollowing description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1 is a diagrammatic perspective view of a programmable automaticdocking system, wherein the system includes a plurality of port andstarboard transducers, along with a pair of lateral position transducerson a marine vessel, and a programmable control panel to initiate avariety of automatic functions through a processor control unit designedto execute the selected automatic functions;

FIG. 2 is a diagrammatic perspective view of one embodiment of theprogrammable automatic docking system in use during collision avoidanceoperations;

FIG. 3 is a diagrammatic perspective view of one embodiment of theprogrammable automatic docking system in use during docking operationsinto a slip;

FIG. 4 is a diagrammatic perspective view of one embodiment of theprogrammable automatic docking system in use displaying automaticlocation of a floating buoy and/or mooring;

FIGS. 5A-5C is a set of flow diagrams illustrating one embodiment of themethod of operation of the programmable automatic docking system duringdocking operations of a marine vessel with an external object;

FIG. 6 is a flow diagram illustrating one embodiment of the method ofoperation of the programmable automatic docking system during collisionavoidance operations of a marine vessel with an external object;

FIGS. 7A-7C is a set of flow diagrams illustrating one embodiment of themethod of operation of the programmable automatic docking system duringdocking operations of a marine vessel upon entering into a slip;

FIG. 8 is a flow diagram illustrating one embodiment of the method ofoperation of the programmable automatic docking system during theautomatic location of a buoy and/or mooring for a marine vessel;

FIGS. 9A-9C is a set of flow diagrams illustrating one embodiment of themethod of operation of the programmable automatic docking system duringa marine vessel's departure and undocking from an external object;

FIG. 10A illustrates a diagrammatic perspective view of an embodiment ofan automatic location placement system;

FIG. 10B illustrates an embodiment of an automatic location placementsystem that automatically positions a marine vessels stern between twoexternal objects;

FIG. 11A is a flow diagram depicting one embodiment of a method forautomatically moving, by an automatic location placement system, amarine vessel;

FIG. 11B is a flow diagram depicting one embodiment of a method fordetermining a path of travel; and

FIGS. 12A-12B are diagrams of computers that may be used to implementembodiments of the present invention.

DETAILED DESCRIPTION

For explanatory purposes only, this section refers to a marine vesseland an external object when describing both a marine vessel's port andstarboard operations. Furthermore, the only difference in operationbetween “port” or “starboard” operation is the selection of a “port” or“starboard” button on a control panel. This selection determines theactivation of a set of “port” or “starboard” transducers and “port” or“starboard” direction of the marine vessel's sideways movement. Lastly,FIGS. 1-4 illustrate in detail the starboard side of a marine vessel forillustrative purposes only; however one of skill in the art may easilyunderstand the operation from a port side of the marine vessel.

One object of the instant invention is to provide a programmableautomatic docking system, wherein the programmable automatic dockingsystem includes a programmable processor control unit (“PCU”) primarilyfor automatically docking and navigating a marine vessel to a finalposition in relation to an external object, including, but not limitedto a dock. Furthermore, the programmable automatic docking systemoperates independently and without the use or requirement of any humanoperators upon initiation of the programmable automatic docking system.

Another object of the instant invention is to provide a programmableautomatic docking system that possesses the capability to operateeffectively in adverse weather conditions without the requirement orneed for human operators to carryout docking operations.

Another object of the instant invention is to provide a programmableautomatic docking system that removes the risk of damage to the marinevessel and/or the external object by enabling the marine vessel toautomatically move sideways towards the external object upon initiationof the programmable automatic docking system and to a maintain apre-selected position from the external object.

Another object of the instant invention is to provide a programmableautomatic docking system, which comprises a plurality of transducers todetect and transmit a set of distance information between the marinevessel and an external object.

Another object of the instant invention is to provide a programmableautomatic docking system, wherein the set of distance informationprovides feedback to the processor control unit to enable a plurality ofthrusters in conjunction with a main drive system on the marine vessel,to drive the marine vessel in a sideways, fore and aft direction towardthe external object in a controlled lateral path, and velocity.

Another object of the instant invention is to provide a programmableautomatic docking system that maintains the location of the marinevessel once the marine vessel has reached a pre-selected positionrelative to the external object and to maintain that positionindefinitely regardless of the wind and water currents while the systemis in operation.

Another object of the instant invention is to provide a programmableautomatic docking system that automatically position's a marine vesselinto a slip location regardless of wind and water currents.

Another object of the instant invention is to provide a programmableautomatic docking system that maintains the pre-selected position of themarine vessel without the aid of multiple ropes and fenders indefinitelywhile the programmable automatic docking system is in operation.

Yet another object of the instant invention is to provide a programmableautomatic docking system that includes a programmable processor controlunit to enable the marine vessel to remain at a pre-selected distancealongside an external object.

Yet another object of the instant invention is to provide a programmableautomatic docking system that includes a programmable processor controlunit to enable efficient operation regardless of the length of themarine vessel.

In brief, the programmable automatic docking system, once engaged,operates completely automatic without human operators, by controllingthe precise movement and location of a marine vessel in relation to anexternal object until the marine vessel reaches a final pre-selectedposition, and then maintains the final position of the marine vesselwhile the programmable automatic docking system is in operationregardless of wind and water currents.

FIG. 1 illustrates a diagrammatic perspective view of a programmableautomatic docking system 10 possessing an integrated interactiveproximity sensing feedback of a marine vessel's 60 direction, lateralposition, and velocity, along with automatic control of the dockingoperations and other associated functions for the marine vessel 60 oncethe programmable automatic docking system 10 is engaged.

In one embodiment, the programmable automatic docking system 10comprises a set of port side transducers 40P and a set of starboard sidetransducers 40S. Preferably the set of port side transducers 40P furthercomprises four distance sensing transducers 41P, 42P, 44P and 45P, andone lateral port side position transducer 43P, and the set of starboardside transducers 40S further comprises four distance sensing transducers41S, 42S, 44S and 45S, and one lateral starboard side positiontransducer 43S. In one embodiment, the set of port side transducers 40Pand the set of starboard side transducers 40S provide distance,velocity, and position information between five spaced locations on theport and starboard sides of the marine vessel 60.

In yet another embodiment of the programmable automatic docking system10, the set of port side transducers 40P comprise a pair of distancesensing transducers 41P and 42P located on the port fore side of themarine vessel 60, and a pair of distance sensing transducers 44P and 45Plocated on the port aft side of the marine vessel 60, wherein each portside transducers 41P, 42P, 44P and 45P detects and transmits a set ofdistance and velocity information relating to the distance between theport side of the marine vessel 60 and an external object 70; in oneembodiment, the external object 70, includes, but is not limited to adock, another marine vessel, or other similar structure. Additionally,the lateral port side position transducer 43P establishes a lateralposition from the port side of the marine vessel 60 in relation to aprecise lateral reference point on the port external object 70. In thisembodiment, the precise lateral reference point detected is a randomreference point located at ninety degrees to the side of the marinevessel 60 on the external object 70; it may also transmit any lateralmovement of the marine vessel 60 to a programmable processor controlunit 30 (see below discussion).

In yet another embodiment of the programmable automatic docking system10, the set of starboard side transducers 40S comprise a pair ofdistance sensing transducers 41S and 42S located on the starboard foreside of the marine vessel 60, and a pair of distance sensing transducers44S and 45S located on the starboard aft side of the marine vessel 60,wherein each starboard side transducers 41S, 42S, 44S and 45S detect andtransmit a set of distance and velocity information relating to thedistance between the starboard side of the marine vessel 60 and anexternal object in one embodiment, the external object 70, includes, butis not limited to a dock, or other similar structure. Additionally, thelateral starboard side position transducer 43S establishes a lateralposition from the starboard side of the marine vessel 60 in relation toa precise lateral reference point on the starboard external object 70.

The programmable automatic docking system 10 further comprises apropulsion system which includes a bow thruster 51 and a stern thruster52, wherein each respective thruster 51, and 52 drives the marine vessel60 in a sideways direction in relation to the orientation of theexternal object 70, thereby aligning and subsequently maintaining theside of the marine vessel 60 at a final pre-selected distance from theexternal object 70. Moreover, the propulsion system further includes aforward/reverse drive selector 62, and a main drive propeller 63 thatworks in conjunction with the bow thruster 51 and stern thruster 52.

Additionally, the programmable automatic docking system 10 includes aprogrammable processor control unit (“PCU”) 30 which further comprisesan automatic processor operating in real time to communicate andtransmit the set of distance and velocity information provided by theset of port side transducers 40P and starboard side transducers 40S andthe propulsion system, wherein each element of the propulsion system mayoperate independently or together as determined by the programmableprocessor control unit 30.

In one embodiment, the set of port side transducers 40P are preferablyused to transmit distance, position and velocity information withrespect to the port side of the marine vessel 60 in relation to the portside external object 70 to the programmable processor control unit 30.The set of starboard side transducers are preferably used to transmitdistance, position and velocity information with respect to thestarboard side of the marine vessel in relation to the starboard sideexternal object 70 to the programmable processor control unit 30.

Additionally, the programmable automatic docking system 10 comprises acontrol panel 20, wherein the control panel 20 allows for the executionof a series of defined functions by the programmable automatic dockingsystem 10 through the selection of a specific input. In one embodiment,the control panel 20 includes an on button 21 to activate theprogrammable automatic docking system 10 and an off button 22 todeactivate the programmable automatic docking system 10. Furthermore,the control panel 20 comprises a port button 66 and a starboard button67, wherein in one embodiment, when the port button 66 is selected onthe control panel 20, the set of port side transducers 40P wirelesslytransmit the set of distance, position and velocity information whichincludes real-time distance, position and velocity measurements of theport side of the marine vessel 60 in relation to the external object 70to the programmable processor control unit 30. Upon receiving the set ofdistance and velocity information, the programmable processor controlunit 30 engages the bow thruster 51 in response to the real-timedistance and velocity information provided by the set of port fore sidetransducers 41P and 42P during docking operations.

In yet another embodiment, a distance setting may be entered relating toa final pre-selected distance between the marine vessel 60 and theexternal object 70 by selecting a plus button 24 or minus button 25 onthe control panel 20. The final pre-selected distance setting is thentransmitted to the programmable processor control unit 30 for use oncethe programmable automatic docking system 10 is in operation. As statedabove, the system may be engaged by selecting the “on” button 21 on thecontrol panel 20 and disengaged by selecting the “off” button 22 on thecontrol panel 20.

In one embodiment, when the port button 66 is selected on the controlpanel, the set of port side transducers 40P wirelessly transmits the setof position information which includes real-time distance and velocitymeasurements of the port side hull of the marine vessel 60 in relationto the external object 70 to the programmable processor control unit 30.Upon receiving the set of position information, the programmableprocessor control unit 30 engages the bow thruster 51 and stern thruster52 in response to real-time distance transducers distance and velocityinformation provided by the set of port side transducers 41P, 42P, 44Pand 45P during docking operations.

Furthermore, the lateral starboard side position transducer 43S and thelateral port side position transducer 43P are located approximatelymidship on the starboard side and port side respectively, to sense aprecise lateral reference point on the external object 70. Each lateralposition transducer 43P and 43S is able to sense, detect and wirelesslytransmit real time lateral reference point information to theprogrammable processor control unit 30, which is memorized and utilizedduring any lateral movement of the marine vessel 60 thereafter fororientation of the marine vessel 60. Additionally, the programmableprocessor control unit 30 automatically compensates for any fore or aftlateral movement of the marine vessel 60 by controlling a plurality ofactuators 53 which engage a main drive to maintain the marine vessel 60in a controlled lateral path toward the memorized precise lateralreference point on the external object 70.

In yet another embodiment, the programmable processor control unit 30 isin electronic communication with and automatically controls the bowthruster 51 and the stern thruster 52 to position the side of the marinevessel 60 adjacent to the external object 70 at a pre-selected distancefrom the external object 70 and to maintain the side of the marinevessel 60 at the pre-selected distance automatically, thereby providinga completely programmable automatic docking system 10 of integratedinteractive proximity obtaining feedback and automatic control of marinevessel positioning which requires no operator after setting the systemin operation.

FIG. 2 illustrates an automatic collision avoidance function of theinstant invention preferably in marinas and other similar docking areas.In this embodiment, when a forward/reverse drive selector 62 is inoperation, the “ON” button 21 is selected on the control panel 20, andthe selection is electronically communicated to the programmableprocessor control unit 30. Following the activation of the programmableautomatic docking system 10, by the selection of the on button 21, theprogrammable processor control unit 30 transmits to activate a bowdistance, velocity and position transducer 46. Upon activation of thebow distance, velocity and position transducer 46, real-time distanceand velocity information is detected and wirelessly transmitting to theprogrammable processor control unit 30 distance and velocity informationof the bow 69 of the marine vessel 60 in relation to an external object70 (i.e., an environment such as a marina, another marine vessel orrocks etc.). In this embodiment, the programmable processor control unit30 is in electronic communication with a plurality of actuators 53 whichcontrol the forward/reverse drive selector 62 to maintain the marinevessel's 60 velocity preferably at a maximum of five knots.Alternatively, if the external object 70 is detected by the bow distancetransducer 46 directly ahead of the marine vessel 60 at a distance ofone hundred feet or less, the distance and velocity information istransmitted to the processor control unit 30. Subsequently, theprogrammable processor control unit 30 which is in electroniccommunication with a plurality of actuators 53 will automaticallycontrol the plurality of actuators 53 to engage the main drive to reducethe velocity by 0.06 knots per foot of travel and stop the marine vessel60 at a default distance of preferably twenty feet away from theexternal object 70 thereby automatically avoiding a collision. Theprogrammable automatic docking system 10 will maintain this finalposition in relation to the external object 70 until an operator assumesmanual control 61 of the marine vessel 60.

FIG. 3 illustrates an automatic slip operation of the programmableautomatic docking system 10. In this embodiment, a slip location for amarine vessel 60 may be described as follows: a dock is a secured flatstructural mass bordering water which has no movement and is above thewaterline. A slip walkway is attached to the dock at approximatelyninety degrees to the dock extending out above the water at a distancenecessary to accommodate marine vessels 60 of various lengths. There areusually two walkways 71 attached to the dock one adjacent to each sideof the marine vessel 60 and this structure provides a safe u-shapedlocation for a marine vessel to be stored, normally with the aid ofropes.

The slip feature of the instant invention is able to operate in both theforward or reverse direction, along with port side or starboard side.When operating in slip reverse direction, a stern distance, velocity andposition transducer 47 is engaged. In this embodiment, the control panel20 further includes a slip forward button 64 and a slip reverse button65, wherein upon selection of either the slip forward button 64 or slipreverse button 65, the programmable processor control unit 30 maintainsthe marine vessel's 60 velocity at approximately two knots and defaultsto a two feet side clearance between the side of the marine vessel 60and the slip walkway 71 on the port or starboard side.

In one embodiment, the slip operation of the instant invention may occuras follows (the following example demonstrates a forward starboardselection as shown in FIG. 3 ):

-   -   1. As a marine vessel's bow 69 enters the slip, an operator        selects the slip forward button 64 on the control panel 20.    -   2. Thereafter, the starboard button 67 is selected on the        control panel 20.    -   Following the selection of the slip forward button 64 and the        selection of the starboard button 67 by the operator, all        further operations are maintained and controlled by the        programmable automatic docking system 10, thereby eliminating        further operator intervention.

In one embodiment (assuming for example that the starboard button 67 hasbeen selected on the control panel 20), as the marine vessels bow 69enters the slip, the set of starboard side transducers, namely the pairof distance sensing transducers 41S and 42S located on the starboardfore side of the marine vessel 60, and the pair of distance sensingtransducers 44S and 45S located on the starboard aft side of the marinevessel 60 transmit a set of distance and velocity information to theprogrammable processor control unit 30; the set of distance and velocityinformation preferably relates to the distance between the starboardside of the marine vessel 60 and the slip walkway 71. The programmableprocessor control unit 30 will maintain the starboard side of the marinevessel 60 at a default distance setting of approximately two feetbetween the marine vessel 60 and the slip walkway 71 by engaging the bowthruster 51 and the stern thruster 52 via electronic communication inresponse to the distance and velocity information detected andtransmitted from the set of starboard side transducers 41S, 42S, 44S and45S.

Simultaneously and operating independently, while the distance andvelocity information is transmitted by the set of starboard sidetransducers 41S, 42S, 44S and 45S, the bow distance transducer 46wirelessly transmits distance and velocity information to theprogrammable processor control unit 30 in relation to the bow 69 and thedock 70. Furthermore, the programmable processor control unit 30 is inelectronic communication with and controls a plurality of actuators 53,which in turn control the forward/reverse drive selector 62. Therefore,the marine vessel 60 will automatically proceed to the dock 70 andmaintain a maximum velocity of two knots until the bow distancetransducer 46 transmits a minimum distance of three feet between thedock 70 and the bow 69 of the marine vessel 60 to the programmableprocessor control unit 30. Once the bow 69 of the marine vessel is threefeet from the dock 70, the programmable processor control unit 30 willengage the plurality of actuators 53 controlling the forward/reversedrive selector 62 to stop the marine vessel 60 three feet from the dock70 and maintain this final position indefinitely while the programmableautomatic docking system 10 is in operation.

FIG. 4 illustrates a floating buoy/mooring operation of the instantinvention, wherein the buoy/mooring operation includes the use of atleast one bow distance, velocity and position transducer 46 for sensingthe location, velocity and distance of a floating buoy/mooring 73.

In one embodiment, the floating buoy/mooring operation may occur asfollows:

The bow 69 of the marine vessel 60 is brought into approximate alignmentwith the buoy/mooring 73 up to two hundred feet or less ahead of the bow69 of the marine vessel 60. Upon approximate achievement of thisposition, a buoy button 68 is selected on control panel 20. Once thebuoy button 68 is selected, the programmable processor control unit 30wirelessly transmits to activate the bow distance, velocity and positiontransducer 46. Upon activation of the bow distance transducer 46, thebow distance transducer 46 detects and transmits a set of distance,position and velocity information to the programmable processor controlunit 30; the set of position information includes the distance andlocation of the bow 69 of the marine vessel 60 with respect to theposition of the buoy/mooring 73, along with the current velocity of themarine vessel 60. Additionally, the programmable processor control unit30 remains in electronic communication and automatically engages aplurality of actuators 53 which control the forward/reverse driveselector 62; the programmable processor control unit 30 maintains amaximum speed of the marine vessel 60 of approximately two knots andcontrols the bow thruster 51 via electronic communication in response tobow distance, velocity and position transducer real time information tomaintain the direction of the bow 69 of the marine vessel 60 toward thebuoy/mooring 73. Once the bow distance, velocity and position transducer46 transmits a distance of three feet between the bow 69 of the marinevessel 60 and the buoy/mooring 73, the programmable processor controlunit 30 activates the plurality of actuators 53. This in turn, controlsthe forward/reverse drive selector 62 to stop the marine vessel 60 andcontinue to control the forward/reverse drive selector 62 and bowthruster 51 to maintain the bow 69 approximately three feet from thebuoy/mooring 73 indefinitely until the “OFF” switch 22 is selected onthe control panel 20.

FIGS. 5A-5C illustrates one embodiment of the method of operation of theprogrammable automatic docking system 10 during docking operations. Inthis example, the marine vessel will be docking at a starboard externalobject 70, merely for illustration purposes as shown in FIG. 1 .

Initially at step 100A, an operator will bring the marine vessel 60 to astop approximately sixty feet or less adjacent to the external object70, wherein the marine vessel 60 preferably is in a parallel orientationto the external object 70. Once the marine vessel 60 is stopped, then atstep 102A, the on button 21 located on the control panel 20 is selectedby an operator. Upon selection of the on button 21, at step 104A, theprogrammable processor control unit 30 is activated. Followingactivation of the programmable processor control unit 30, at step 106A afinal desired distance between the starboard side of the marine vessel60 and the external object 70 is pre-selected in order for theprogrammable automatic docking system 10 to cease movement of the marinevessel once the pre-selected position is reached. In one embodiment, thepre-selected distance may be input into the control panel 20 by pressinga plus button 24 to increase the distance or by pressing a minus button25 to decrease the distance; the present distance selected will be shownon a display 23. Once the final distance is selected, at step 108A, aport button 66 or a starboard button 67 is selected on the control panel20 (for this example a starboard button 67 will be selected). At step110A, the programmable processor control unit 30 automatically transmitsto activate a set of starboard side transducers 40S, which include thepair of distance sensing transducers 41S and 42S located on thestarboard fore side of the marine vessel 60, and the pair of distancesensing transducers 44S and 45S located on the starboard aft side of themarine vessel 60 and a starboard side lateral position transducer 43S.Following activation of the set of starboard side transducers 40S, atstep 112B the programmable processor control unit 30 activates the bowthruster 51 via electronic communication in response to the set ofreal-time distance and velocity information transmitted from the pair ofdistance sensing transducers 41S and 42S located on the starboard foreside of the marine vessel 60 to move the marine vessel 60 in a starboarddirection. Simultaneously, at step 114B the programmable processorcontrol unit 30 activates the stern thruster 52 via electroniccommunication in response to the set of real-time distance and velocityinformation transmitted from the pair of distance sensing transducers44S and 45S located on the starboard aft side of the marine vessel 60 tomove the marine vessel 60 in a starboard direction. At step 116B, theprogrammable processor control unit 30 automatically controls the bowthruster 51 and the stern thruster 52 to move the marine vessel 60 in astarboard direction preferably at a velocity of one foot every twoseconds towards the external object 70. Once the marine vessel 60 isapproximately within ten feet from the pre-selected final distance inrelation to the external object 70, at step 118B the programmableprocessor control unit 30 communicates with the bow thruster 51 and thestern thruster 52 to reduce the velocity of the marine vessel 60; forexample, if the pre-selected final distance from the external object 70is five feet, then the marine vessel 60 will begin reducing velocity by0.03 knots per foot of travel at fifteen feet from the external object70. Next, at step 120B, once the pre-selected final position is reached,the programmable processor control unit 30 engages the bow thruster 51and the stern thruster 52 to stop the marine vessel 60. Once thepre-selected final distance to the external object 70 is reached by themarine vessel 60, at step 122B, the final pre-selected position ismaintained indefinitely while the programmable automatic docking system10 is in operation.

While the starboard transducers 41S, 42S, 44S and 45S are in operationand transmitting real-time distance and velocity information to theprogrammable processor control unit 30 to move the marine vessel 60 in astarboard direction, the starboard lateral side position transducer 43Swill be operating simultaneously and independent of the set of starboardtransducers 41S, 42S, 44S and 45S to detect and transmit real-timelateral position of the marine vessel 60.

Therefore, at step 112C, the starboard lateral side position transducer43S detects a lateral reference point on the external object 70 andwirelessly transmits the lateral reference point to the programmableprocessor control unit 30. At step 114C, the programmable processorcontrol unit 30 memorizes the lateral reference point, from which anyfuture lateral movement of the marine vessel 60 thereafter is processed.At step 116C, the programmable processor control unit 30 automaticallycompensates for any lateral movement of the marine vessel 60 bycontrolling the plurality of actuators 53 in response to the real-timelateral position information transmitted from the starboard lateral sideposition transducer 43S. At step 118C, the plurality of actuators 53engage the forward/reverse drive selector 62 in order to maintain themarine vessel 60 in a controlled lateral path of travel toward theprecise lateral reference point memorized by the programmable processorcontrol unit 30. At step 120C once the marine vessel 60 reaches thefinal pre-selected position as described at step 118C, the starboardlateral side position transducer 43S will continue to transmit real-timelateral position information of the marine vessel 60 in relation to thememorized precise lateral reference point to the programmable processorcontrol unit 30 and at step 122 c will maintain the lateral position ofthe marine vessel 60 while the programmable automatic docking system 10is in operation.

FIG. 6 illustrates one embodiment of the method of operation of theprogrammable automatic docking system during collision avoidanceoperations of a marine vessel with an external object. Initially, atstep 200, the forward/reverse drive selector 62 is engaged by anoperator of the marine vessel 60. At step 202, the on button 21 of thecontrol panel 20 is selected by the operator of the marine vessel 60.Following selection of the on button 21, at step 204, the programmableprocessor control unit 30 of the programmable automatic docking system10 is activated. At step 206, the programmable processor control unit 30transmits to activate the bow distance, velocity and position transducer46. At step 208, once the bow distance, velocity and position transducer46 is activated, the bow distance, velocity and position transducer 46will detect and transmit real time distance and velocity informationbetween the bow 69 of the marine vessel 60 and an external object 70.After transmission of the initial distance information, at step 210 theforward/reverse drive selector 62 is controlled via a plurality ofactuators 53 in electronic communication with the programmable processorcontrol unit 30. At step 212 the programmable processor control unit 30controls the forward/reverse drive selector 62 to maintain the marinevessel 60 preferably at a default velocity of five knots. At step 214,the bow distance, velocity and position transducer 46 continues totransmit real-time distance information and when an external object 70is detected one hundred feet or less from the bow 69 of the marinevessel 60 the programmable processor control unit 30 communicateselectronically with the plurality of actuators 53. At step 216, theplurality of actuators 53 control the forward/reverse drive selector 62reducing velocity by 0.06 knots per foot of travel to stop the marinevessel 60 twenty feet from the external object 70. Finally, at step 218,once a distance of twenty feet between the bow 69 of the marine vessel60 and the external object is reached, the marine vessel 60 ismaintained at that position indefinitely. Alternatively, if the bowdistance, velocity and position transducer 46 does not detect anexternal object 70 within one hundred feet of the bow 69 of the marinevessel at step 218, then the system returns to step 212 to continue totransmit real-time distance information from the bow distance, velocityand position transducer 46 to the programmable processor control unit30.

FIGS. 7A-7C illustrate a flow diagram illustrating one embodiment of themethod of operation of the programmable automatic docking system duringdocking operations of a marine vessel upon marine vessels bow entering aslip; this flow diagram demonstrates the forward movement and starboardselection previously shown in FIG. 3 .

Initially, at step 300A an operator of the system selects the slipforward button 64 on the control panel 20. At step 302A the programmableprocessor control unit 30 is activated to operate the slip forward mode.At step 304A the operator selects the port button 66 or the starboardbutton 67 on the control panel 20 (by way of illustration, starboardbutton 67 is selected as follows). At step 306A, the programmableprocessor control unit 30 automatically transmits to starboardtransducers 41S, 42S, 44S, 45S and bow distance, velocity and positiontransducer 46 which are simultaneously activated. At step 308B the bowdistance, velocity and position transducer 46 transmits in real timedistance and velocity information between the marine vessels bow 69 andthe dock 70 to the programmable processor control unit 30. At step 310B,in response to real time distance and velocity information received frombow distance, velocity and position transducer 46, the programmableprocessor control unit 30 communicates with actuators 53 which controlthe forward/reverse drive selector 62. At step 312B, the programmableprocessor control unit 30 communicates with actuators controllingforward/reverse drive selector 62 which maintains marine vessel 60velocity at a programmable processor control unit 30 default setting oftwo knots. At step 314B when bow distance, velocity and positiontransducer 46 transmits a distance of three feet between marine vesselsbow 69 and dock 70 the programmable processor control unit controlsactuators 53 and forward/reverse drive selector 62 to stop marine vessel60 at a default setting of three feet from dock 70. At step 308Cstarboard distance transducers 41S, 42S, 44S and transmit real timedistance information between marine vessel and slip walkway 71 to theprogrammable processor control unit 30. At step 310C the programmableprocessor control unit 30 engages bow thruster 51 in response to foreside transducers 41S and 42S distance information and at step 312Csimultaneously engages stern thruster 52 in response to distance sensingtransducers 44S and distance information to maintain at step 314C adefault distance of two feet between marine vessel 60 and slip walkway71. At step 316C the programmable processor control unit 30 maintainscontrol of bow thruster 51, stern thruster 52, actuators 53 andforward/reverse drive selector 62 to maintain position of marine vessel60 indefinitely regardless of wind or water currents.

FIG. 8 illustrates a method of operation of the programmable automaticdocking system 10 during the automatic location of a buoy and/or mooringfor a marine vessel. Initially, at step 400, an operator of theprogrammable automatic docking system 10 brings the bow 69 of the marinevessel 60 into approximate alignment with a floating buoy/mooring 73 ata distance of approximately two hundred feet or less directly forward ofmarine vessels bow 69. Once, the marine vessel 60 is in approximatealignment, following at step 402, the operator selects the buoy button68 on the control panel 20, which in turn activates the programmableprocessor control unit 30 into buoy mode. At step 404, the programmableprocessor control unit 30 wirelessly transmits to the bow distance,velocity and position transducer 46 which is then activated. At step 406following activation, the bow distance, velocity and position transducer46 detects and transmits real-time distance, location and velocityinformation to the programmable processor control unit 30 of the bow 69of the marine vessel in relation to the floating buoy/mooring 73. Atstep 408, the programmable processor control unit 30 electronicallycommunicates with the plurality of actuators 53 when at step 410 engagesthe forward/reverse drive selector 62 to maintain the forward velocityof the marine vessel 60 at a default velocity of approximately twoknots. Then at step 412, the programmable processor control unit 30communicates with and engages the bow thruster 51 in response to thereal-time distance and position information detected and transmitted bythe bow distance, velocity and position transducer 46 to maintain themarine vessel in a direct path of travel towards the floatingbuoy/mooring 73. At step 414, when the distance between the bow 69 ofthe marine vessel and the floating buoy/mooring 73 is three feet, themarine vessel 60 is stopped by the programmable processor control unit30 communicating with and engaging the plurality of actuators 53 whichat step 416 control the forward/reverse drive selector 62 to maintainthe position of the marine vessel indefinitely. At step 418, as long asthe programmable automatic docking system 10 is in operation, theplurality of actuators 53 will control the forward/reverse driveselector 62 and the programmable processor control unit 30 responding tobow distance, velocity and position transducer 46 information willcontrol the bow thruster 51 to maintain the final position of the marinevessel 60.

FIGS. 9A-9C illustrate a method of operation of a marine vessel's 60departure from an external object 70 which is automatically controlled(in this example the marine vessel 60 is departing a starboard sideexternal object 70).

Initially, at step 500A, an operator selects the on button 21 located onthe control panel 20, which in turn activates the programmable processorcontrol unit at step 502A. Next, at step 504A, the operator inputs adistance to move the marine vessel 60 away from the external object 70by selecting a plus button 24 or a minus button 25 on the control panel20; the selected distance will be shown on the display 23 on the controlpanel 20, wherein a distance of up to sixty feet may be selected. Atstep 506A the operator will select the starboard button 67 on thecontrol panel to move the marine vessel 60 away from a starboard sideexternal object 70 (in other embodiments to move away from a port sideexternal object 70, the port button 66 would be selected). At step 508A,the programmable processor control unit 30 activates the set ofstarboard transducers 40S which includes the starboard lateral sideposition transducer 43S.

Following activation of the set of starboard side transducers 40S, atstep 510B the programmable processor control unit 30 activates the bowthruster 51 via electronic communication in response to the set ofreal-time distance and velocity information transmitted from the pair offore side distance sensing transducers 41S and 42S located on thestarboard fore side of the marine vessel 60 to move the marine vessel 60to the pre-selected distance away from the external object.Simultaneously at step 512B the programmable processor control unit 30activates the stern thruster 52 via electronic communication in responseto the pair of real-time distance and velocity information transmittedfrom the pair of distance sensing transducers 44S and 45S located on thestarboard aft side of the marine vessel 60 to move the marine vessel 60to the pre-selected distance away from the external object 70. The setof starboard side transducers 41S, 42S, 44S and detect and record a setof distance and velocity information between the starboard side of themarine vessel 60 and the external object 70. At step 514B, theprogrammable processor control unit controls the bow thruster 51 and thestern thruster 52 to move the marine vessel 60 to the pre-selecteddistance away from the external object preferably at a default velocityof one foot every two seconds. At step 516B, once the marine vessel 60is approximately within ten feet from the pre-selected distance inrelation to the external object 70, the programmable processor controlunit 30 communicates with the bow thruster 51 and the stern thruster 52to reduce the velocity of the marine vessel 60 by 0.03 knots per foot oftravel; for example, if the pre-selected distance from the externalobject 70 is fifty feet, then the marine vessel will reduce velocity atforty feet from the external object 70. Next, at step 518B, once thepre-selected final position is reached, the programmable processorcontrol unit 30 engages the bow thruster 51 and the stern thruster 52 tostop the marine vessel Once the pre-selected distance to the externalobject 70 is reached by the marine vessel 60, at step 520B, thepre-selected position in relation to the external object 70 ismaintained while the programmable automatic docking system 10 is inoperation.

While the set of starboard transducers 41S, 42S, 43S and are inoperation and transmitting real-time distance and velocity informationto the programmable processor control unit 30 to move the marine vessel60 to the pre-selected distance away from the external object, thestarboard lateral side position transducer 43S will be operatingsimultaneously and independent of the set of starboard transducers 41S,42S, 44S and 45S to detect and transmit real-time lateral position ofthe marine vessel 60. Therefore, at step 510C, once the starboardlateral side position transducer 43S is activated, the starboard lateralside position transducer 43S detects a precise lateral reference pointon the external object 70, which at step 512C the programmable processorcontrol unit 30 memorizes, and from which any future lateral movement ofthe marine vessel 60 thereafter is processed. At step 514C, theprogrammable processor control unit 30 automatically compensates for anylateral movement of the marine vessel 60 by controlling the plurality ofactuators 53 in response to the real-time lateral position informationtransmitted from the starboard lateral side position transducer 43S. Atstep 516C, the plurality of actuators 53 engage the forward/reversedrive selector 62 in order to maintain the marine vessel 60 in acontrolled lateral path of travel in relation to the precise lateralreference point memorized by the programmable processor control unit 30.

Once the pre-selected distance away from the external object 70 isreached by the marine vessel 60, at step 518C, the pre-selected positionis maintained while the programmable automatic docking system 10 is inoperation.

Although described above in connection with the use of programmableautomatic docking systems, the methods and systems described herein mayinclude, instead of or in addition to such systems, other components forproviding functionality that, in some embodiments, provides automaticlocation placement systems.

The technologies described herein include functionality for automatedvessel base placement, collision-free path planning, and automatedguided manipulation. These technologies are integrated with a marinevessel to provide capabilities for selecting, targeted location,automated vessel approach, and placement.

In one embodiment, an automatic location placement system includes amapping generated by a central processing unit from data received overan optical feed from vision ranging and infrared vision systems, as wellas from high precision inertial measurement units (IMUs) and globalpositioning system (GPS) and a central processing unit (CPU), forautomatic location placement of, for example, a marine vessel into atargeted location in relation to an external object, including, but notlimited to a dock or other external object. In some embodiments, theautomatic location placement system may automatically position a marinevessel between two external objects regardless of wind and watercurrents. The automatic location placement system, once engaged, mayoperate completely automatically without human operators, by controllingthe precise movement and location of a marine vessel in relation toexternal objects until the marine vessel reaches a final targetedposition, and then the automatic location placement system maintains thefinal position of the marine vessel while the automatic locationplacement system is in operation regardless of wind and water currents.

In some embodiments, the automatic location placement system may makeuse of photographic and infrared area mapping of distance and velocityinformation providing feedback to the central processing unit to enablea plurality of drive systems on the marine vessel, to move the marinevessel in a controlled path of travel and velocity to the final targetedlocation relative to an external object.

Another feature of certain embodiments of the automatic locationplacement system disclosed herein is the ability to operate effectivelyand with precision in darkness and in adverse weather conditions,without the requirement or need for human operators to carry out manualmaneuvering to a targeted location in relation to an external object.

Another feature of the automatic location placement system is theability to maintain a targeted location of a marine vessel once themarine vessel has reached the location that was targeted on a touchscreen monitor relative to an external object and to maintain thatlocation indefinitely regardless of the wind and water currents whilethe location placement system is in operation.

Referring now to FIG. 10A, the figure illustrates a diagrammaticperspective view of an embodiment of an automatic location placementsystem. In one aspect, a system 1000 includes an integrated,interactive, automatic location positioning system sensing feedback of amarine vessel's relative position to neighboring surroundings, location,and velocity, along with automatic control of the marine vessel'smovement, including velocity and path of travel, to a targeted locationrelative to an external object. Referring now to FIG. 10B, the figureillustrates an embodiment of an automatic location placement system thatautomatically positions a marine vessel's stern between two externalobjects.

Photographic and infrared system capabilities may continuously map theareas surrounding a marine vessel and transmit in real time (or nearreal time), distance, velocity and visual information between the marinevessel and the surrounding areas to the central processing unit 1003 foruse in automatically maneuvering the marine vessel for placement in afinal targeted location (e.g., alongside an external object such as adock 1004) and in maintaining that position automatically.

The system 1000 includes a vision ranging photograph system generatingat least one optical feed. The vision ranging photograph system mayinclude vision systems for navigation, which also provide depthinformation. As will be understood by those of ordinary skill in theart, such systems may include a plurality of cameras mounted at fixed orvariable positions (e.g., two cameras per direction).

Optical data (e.g., video) generated by the vision ranging photographsystem may be updated periodically. As one example, the optical data maybe updated continuously; continuous updates allow the system to provide,via the optical feed, a view of an area that is updated at or near realtime. In such an embodiment, the system may be referred to as includinga live feed.

The vision ranging photograph system may include the photooptical/infrared day/night ranging sensor vision system 1002. The system1000 includes at least one infrared vision system, which may be providedby the photo optical/infrared day/night ranging sensor vision system1002. The photo optical/infrared day/night ranging sensor vision system1002 may include one or more sub-components. For example, the photooptical/infrared day/night ranging sensor vision system 1002 may includeone or more night vision sensors for providing optical (includinginfrared) feed (e.g., without limitation, video) at night or duringother low light or low visibility conditions. The vision rangingphotograph system may include one or more cameras mounted at one or morepositions on the marine vessel.

The system 1000 includes at least one ranger laser scanner 1008. In oneembodiment, the at least one ranger laser scanner 1008 generates a pointcloud representing depth information associated with objects inproximity to the at least one ranger laser scanner (and by extension, inproximity to the marine vessel). As will be understood by those ofordinary skill in the art, such a sensor may be referred to as ascanning range finder. As will be discussed in additional detail below,the at least one ranger laser scanner 1008 may include functionality forhazard detection. As will be understood by those of ordinary skill inthe art, one or more 270-degree LASER scanners may provide thefunctionality of the vision ranging photograph system, such as, by wayof example, a ranging sensor of the type manufactured by HokuyoAutomatic Co., Ltd., of Osaka, Japan, or by Velodyne LiDAR of MorganHill, CA.

The system 1000 includes at least one inertial measurement unit (IMU).The system 1000 includes at least one global positioning system (GPS)unit. The inertial measurement unit and the global positioning systemunit may be provided as a single unit 1010. The inertial measurementunit and the global positioning system unit may be provided as separatecomponents.

The IMU may provide acceleration information; for example, the IMU mayprovide information (e.g., measurements) in an X, Y, Z axis; the currentangular rate of the marine vessel in X, Y, and Z coordinates. Thecentral processing unit 103 may apply a fusion algorithm to measurementsreceived from the IMU. As will be understood by one of ordinary skill inthe art, the IMU may be provided by inertial sensors of any form ortype, including, by way of example, those manufactured by Robert BoschGmbH of Germany.

The GPS may provide global coordinates of the marine vessel, including,for example, longitude and altitude. The central processing unit 103 mayuse the GPS data in conjunction with other received input when applyinga sensor fusion algorithm to generate the underlying mapping or anoverlay to the mapping. In some embodiments, using GPS data may resultin improved precision of a location estimate the system uses to positionthe marine vessel. The GPS may be any form or type including, by way ofexample, those manufactured by SparkFun Electronics of Niwot, CO, or byGarmin International, Inc., of Olathe, KS.

The system 1000 includes a touch screen monitor 1007. The touch screenmonitor 1007 may be in communication with the central processing unit1003, receiving, for example, data from the optical feed for display toa user. The touch screen monitor 1007 may include a touch capacitivescreen allowing a user to interact with a graphical user interfacedisplayed by the touch screen monitor 1007 by touching a screen of thetouch screen monitor 1007. The touch screen monitor 1007 may display anoverlay of the geometries of an environment surrounding the marinevessel, the overlay generated from data received over the optical feedfrom the vision system by using optical ranging photography with a dayor night all-weather infrared vision system as well as the highprecision inertial measurement units (IMUs) and global positioningsystem (GPS) unit to initiate a variety of automatic functions overvarious distances through a central processing unit (CPU) 1003 designedto execute selected automatic functions in response to acquired data.The touch screen monitor 1007 provides functionality allowing a user tointeract with the system; as a result, the touch screen monitor may bereferred to as an interactive touch screen monitor.

The system 1000 includes a propulsion system of a marine vessel 1001including at least one thruster, at least one drive system, and at leastone actuator. The at least one thruster may be a bow thruster 1005A. Theat least one thruster may be a stern thruster 1005B. The at least onedrive system may be a main drive thrust 1006A. A marine vessel has asteering system (1012) including a rudder or mechanism for adjusting avariable direction of thrust controlling the vessel's path of travel.

The system 1000 includes a central processing unit located on the marinevessel and operatively connected to at least one element of thepropulsion system. The central processing unit 1003 may includefunctionality for receiving from the vision ranging photography system,the at least one optical feed, the feed including data providing amapping of an environment surrounding the marine vessel. The centralprocessing unit 1003 may, for example, receive the optical feed from thevision ranging photography system via a wired or wireless connection.The central processing unit 103 may receive a plurality of inputs fromone or more sensors (e.g., from sensors forming part of the visionranging system), the inputs including video data and LIDAR data; thecentral processing unit 103 may then use the inputs to derive a map ofan area surrounding the marine vessel. The central processing unit 103may encode free and occupied areas of the map with a probability that anobstacle has been detected in a particular area; for example, thecentral processing unit 103 may assign a probability within a range(e.g., 0-255) and the higher the probability, the more likely it is thatthe area contains an obstacle.

The central processing unit 1003 may include functionality forreceiving, from the touch screen monitor, target location data. Targetlocation data may include an identification of a target location atwhich a user wishes an automatic location placement system to dock themarine vessel. By way of example, the touch screen monitor 1007 maydetermine that a user has touched the touch screen monitor 1007 at aparticular point on a touch capacitive screen; the central processingunit 103 may use information identifying a location touched by the user(e.g., a point identified by an X, Y coordinate pair) and identify aphysical location associated with a mapping of an environmentsurrounding the marine vessel.

The central processing unit 1003 may include functionality for directingat least one element of the propulsion system of the marine vessel, tomove the marine vessel to the targeted location, using the mapping andthe target location data. The functionality provided by the centralprocessing unit 1003 may be referred to as an automatic locationplacement system.

In some embodiments, the methods and systems described herein relategenerally to an automatic location placement system between a poweredmarine vessel and a dock or external object. An automatic locationplacement system may incorporate a touch screen interactive monitordisplaying an overlay of the geometries of an environment surroundingthe marine vessel, over a live feed from a vision system, enabling anoperator of the marine vessel to select a targeted location on the touchscreen monitor 1007.

It is to be understood that the invention is not limited in itsapplication to the size of marine vessel, type of marine vessel, or thedetails of construction and to the arrangements of the components setforth in the following description.

Referring now to FIG. 11A, in connection with FIGS. 10A-10B, a method1100 of automatically moving, by an automatic location placement system,a marine vessel includes receiving, by a central processing unit, from avision ranging photography system, at least one optical feed includingdata providing a mapping of an environment surrounding a marine vessel(1102). The method 1100 includes displaying, by the central processingunit, on a touch screen monitor, the mapping of the environment (1104).The method 1100 includes receiving, by the central processing unit, fromthe touch screen monitor, target location data (1106). The method 1100includes directing, by the central processing unit, at least one elementof a propulsion system of the marine vessel, to move the marine vesselto the targeted location, using the mapping (1108).

The method 1100 includes receiving, by a central processing unit, from avision ranging photography system, at least one optical feed includingdata providing a mapping of an environment surrounding a marine vessel(1102). The central processing unit 1003 may receive a plurality ofimages from the ranging photography system; the central processing unit1003 may then calculate a level of disparity between each of theplurality of images, resulting in a point cloud representing distancesto objects in an area surrounding the marine vessel. In one embodiment,the central processing unit 1003 uses the received data to generate themapping. In another embodiment, the vision ranging photography systemincludes functionality for generating the mapping from visual data andproviding the mapping to the central processing unit 103.

The central processing unit 1003 may receive, via the optical feed, atleast one update of the data providing the mapping of the environmentsurrounding the marine vessel. For example, the central processing unit1003 may receive a continuous stream of updates, which the centralprocessing unit 1003 may use to generate a continuously updated mapping.

In some embodiments, the central processing unit 1003 receives, frommultiple sources, data associated with the environment surrounding themarine vessel (e.g., sensor data and imaging data). For example, aninfrared vision system may operate in situations with low light or low-or zero-visibility; the central processing unit may therefore receive,from the infrared vision system, transmitted data including a secondmapping of the environment surrounding a marine vessel. The additionaldata may also be provided in a continuous (e.g., continuously updated)stream. The additional data may also represent a relation between themarine vessel and the target location adjacent to an external object.

As another example of an embodiment in which the central processing unit1003 receives optical data from multiple sources, the central processingunit 1003 may receive information from one or more optical laserscanners 1008. The automatic location placement system executed by thecentral processing unit 1003 may determine a proximity of the marinevessel 1001 to neighboring marine vessels, docks and/or other obstaclesusing optical laser scanners 1008. For example, and as will beunderstood by one of ordinary skill in the art, the optical laserscanners may determine a distance between the marine vessel 1001 to theexternal object 1004 by sending out laser beams and measuring the timeof flight (TOF) of the reflected beam coming back to the sensing unit.The scanner may rotate 360° horizontally and several degrees vertically,to provide many of those measurements; based on the TOF, the distancecan be precisely calculated.

In some embodiments, while the automatic location placement system isreceiving the data from the optical laser scanners 1008, the day-nightvision system and optical photo scanners 1002 are recording the sameenvironment visually. The central processing unit 1003 may use theinformation received from the optical laser scanners 1008 and theday-night vision system and optical photo scanners 1002 to generate avisual representation of the data for display to an operator on thetouch screen monitor 1007 (e.g., displaying a “live,” or substantiallyreal-time, video feed).

In some embodiments, the central processing unit 1003 applies a sensorfusion algorithm to integrate inputs received from a plurality ofsensors (e.g., from sensors forming part of the optical laser scanners1008 and the day-night vision system and optical photo scanners 1002 andany other sources of data associated with the environment surroundingthe marine vessel); the result of such an integration is amulti-dimensional array of measurements (which may be referred to as a“point cloud”). In one of these embodiments, the sensor fusion algorithmuses different filters to combine data received from sensors (includingthe IMU and the GPS) into one map and filters out faulty reflections(e.g., waves, water surface, etc.). For the creation of the occupancygrid-map, in another of these embodiments, the method 1100 may includethe application of probabilistic approaches and multi-resolutionscan-matching to complete a map useful in path planning.

Referring still to FIG. 11A, the method 1100 includes displaying, by thecentral processing unit, on a touch screen monitor, the mapping of theenvironment (1104). The central processing unit 1003 may forward themapping or the optical feed data or both to the touch screen monitor1007. The touch screen monitor 1007 may display the mapping of theenvironment (e.g., to an operator of the marine vessel 1001). Thecentral processing unit 1003 may generate an overlay of the geometriesof environment surrounding the marine vessel 1001 for display by thetouch screen monitor 1007, using data received over the optical feed ofvision system. The touch screen monitor 1007 may display the surroundingenvironment in relation to the marine vessel and the targeted locationadjacent to the external object. In embodiments in which the centralprocessing unit 1003 received optical data from multiple sources (e.g.,from an infrared vision system as well as from other sources), the touchscreen monitor 1007 may display output received from each of the othermultiple sources as well (e.g., as overlays over the initial mapping).In an embodiment in which the central processing unit 1003 received asecond mapping, the touch screen monitor 1007 may display the secondmapping as well.

The method 1100 includes receiving, by the central processing unit, fromthe touch screen monitor, target location data (1106). The touch screenmonitor 1007 may generate a graphical user interface and allow theoperator to interactively specify the target location of the marinevessel 1001 by touching a user interface element displayed in thegraphical user interface, where the user interface element is located ata position corresponding to the target location or otherwise indicatesthe target location. The touch screen technology may allow for intuitiveand versatile yet simple input to designate a targeted location for themarine vessel 1001. For example, the touch screen monitor 1007 maydisplay a video (continuously updated) of the area surrounding themarine vessel 1001 (including, for example, any docks or other externalobjects 104) and the operator may touch the screen at a position in thevideo display at which she would like the marine vessel 1001 positioned.The position may be a position relative to a single external object(e.g., a dock) or relative to a plurality of external objects (e.g., ata slip between two portions of a dock or between two other marinevessels). The method 1100 may derive the target location data from theposition touched by the operator.

The target location data may specify a location adjacent to an externalobject. The target location data may include an identification of atargeted location for the marine vessel, the targeted location beingbetween two aft external objects.

When the location is targeted on the touch screen monitor 1007, theoptical feed of vision ranging and infrared vision systems map themarine vessel's stern-surrounding environment and transmit data to thecentral processing unit 1003 for rendering, on the touch screen monitor1007, a mapping showing the marine vessel's stern surroundingenvironment and the targeted location between one or more externalobjects. In one embodiment, when a targeted location is entered on thetouch screen monitor 1007, the central processing unit 1003 engages two270 degree ranging laser scanners which transmit the surroundingenvironment information back to the central processing unit 1003. Thecentral processing unit 1003 may update a previously generated pointcloud as it receives additional sensor input from the cameras.

In one embodiment, the central processing unit 1003 validates a targetedlocation identified in the target location data to confirm that thetargeted location is large enough to accommodate the marine vessel. Forexample, the automatic location placement system may calculate one ormore dimensions of the targeted location, confirming the targetedlocation area is sufficient to accommodate the dimensions of the marinevessel. The central processing unit 1003 may validate the operator'sinput and match the input with the mapping generated by the opticalranging sensors 1002.

The method 1100 includes directing, by the central processing unit, atleast one element of a propulsion system of the marine vessel, to movethe marine vessel to the targeted location, using the mapping (1108).The central processing unit 1003 may automatically provide the at leastone element of the propulsion system of the marine vessel, a path oftravel to the selected targeted location, upon receiving the targetedlocation data from the touch screen monitor 1007. The central processingunit 1003 may automatically control at least one steering system of themarine vessel to move the marine vessel into the targeted location, uponreceiving the targeted location data from the touch screen monitor 1007.Upon receiving the targeted location data from the touch screen monitor1007, the central processing unit 1003 may automatically control atleast one drive system of the marine vessel 1001 to steer the marinevessel 1001 into the targeted location, engaging the thrusters 1005A and1005B and main drive thrusters 1006A and 1006B, while controlling thevessel's steering system if and when required in order to move themarine vessel 1001 on the quickest possible controlled path of travel tothe targeted location, as described in greater detail below.

Referring ahead to FIG. 11B, a flow diagram depicts one embodiment of amethod 1150 for determining a path of travel. The central processingunit 1003 may update the mapping and any overlays before determining apath of travel. The central processing unit 1003 may determine aposition of the marine vessel (e.g., in relation to the targetlocation). Location information of the marine vessel 1001 may constantlybe transferred (e.g., from the GPS) to the central processing unit 1003which responds by controlling vessel's steering system if, and whenrequired, to maintain the vessel's path of travel to the targetedlocation selected on the interactive monitor; the central processingunit 1003 may receive periodic updates to the location information. Thecentral processing unit 1003 may perform one or more updates,incorporating any obstacle-related data, and then compute one or morepaths. In one embodiment, to detect the location of the marine vessel1001, the central processing unit 1003 receives GPS position and a scanof an area surrounding the marine vessel 1001 (e.g., from thephotographic vision system 1002 and 1008); the central processing unit1003 calculates a travel distance and angle to an obstacle (e.g., theclosest obstacle) and generates a mapping of desired parking locationrelative to marine vessel 1 location (x-position, y-position, relativeangle).

As shown in FIG. 11B, the method 1150 includes merging scans (e.g., datafrom one or more scanning systems, from the GPS, and/or from the IMU)(1152). This merger may result in generation or updating, by the centralprocessing unit 1003, of a 3D point cloud (including, e.g., a 3D pointcloud coordinate transformation). The method 1150 includes refinement ofthe 3D point cloud (1154), which may include rejection of outliers andextraction of an area of interest; this may include another 3D pointcloud coordinate transformation. The method 1150 includes generation ofa 2D scan projection (1156), which may include a 2D scan coordinatetransformation. The method 1150 includes performance of a slam (e.g.,simultaneous localization and mapping) update (1158), which may includegeneration of a 3D pose occupancy grid and incorporation of GPS posedata (including, without limitation, latitude, longitude, and altitude).Fusing the data from the GPS with data from other sensors may improveaccuracy. The method 1150 includes computation of a safe area in whichto navigate, incorporate data associated with a model of a hull of themarine vessel (1160). This may include generation of a 3D pose costmap.The method 1150 includes computation of a global path and a local path(1162). This may include generation or updating of a 3D pose costmap.The method 1150 includes execution of the path and updating the localpath (1164).

Referring back to FIG. 11A, the central processing unit 1003 maycalculate a path of movement of the marine vessel, incorporatinginformation about one or more obstacles detected by a LIDAR hazarddetection and avoidance systems. The central processing unit 1003 mayengage at least one aft ranger laser scanner and may receive from the atleast one aft ranger laser scanner 1008, data including at least one ofdistance, velocity, and dimensional area information. The automaticlocation placement system may include a Light Detection and Ranging(LIDAR) hazard detection and avoidance system, using input from the atleast one aft ranger laser scanner 1008. In one embodiment, the LIDARhazard detection and avoidance system performs data fusion onsensor-level data. For example, the LIDAR hazard detection and avoidancesystem may reconstruct a point cloud obtained from a scanning LIDAR unit(e.g., as part of the vision ranging photograph system) using navigationmotion states and correcting the image for motion compensation using IMUdata, obtained from consecutive LIDAR images, to achieve high accuracyand resolution maps while enabling relative positioning. In anotherembodiment, the LIDAR hazard detection and avoidance system performsdata fusion on decision-level data (e.g., fusing hazard maps frommultiple sensors onto a single image space, with a single gridorientation and spacing).

Having determined the position of the marine vessel 1001 and calculatedat least one path, the central processing unit 103 may then calculatethe required directional torque values for every individual thrustermounted on the marine vessel 1001. The required forces and torques attime t may be controlled and calculated by a PID algorithm based on thefollowing formula:

$T = {{P{\overset{˙}{\eta}(t)}} + {D \cdot {v(t)}} + {I \cdot {\int_{0}^{t}{{\eta(s)}ds}}}}$

-   -   For:    -   η=location    -   ν=Velocity        The marine vessel 1001 location, necessary for the control        algorithm, may be computed based on the acquired sensor data as        well based on GPS 1010 information provided from the GPS 1010        device. PID parameters are gathered during an initial teach-in        of the system, which is part of the initial installation        procedure for the system.

The total amount of required directional force is then allocated to theindividual thrusters 1005A and 1005B due to the fact that every thrusterhas different timing behavior as well as maximum possible forcelimitations. The goal of this part of the algorithm is to keep allthrusters 5A and 5B within the range of optimal operation. The followingoptimization may be calculated:

T − T_(thruster)₂² → min  $T_{thruster} = {\begin{pmatrix}1 & 1 & 0 & 0 \\0 & 0 & 1 & 1 \\{{- l}y1} & {{- {ly}}2} & {{- {lx}}3} & {{- l}x4}\end{pmatrix} \cdot \begin{pmatrix}x_{1} \\x_{2} \\x_{3} \\x_{4}\end{pmatrix}}$ ❘x_(i)❘ ≤ x_(max)Propeller 6A and Propeller 6B are main drive thrusters (provide thrustin fore and aft direction) mounted in aft position on marine vessel1001; they are referred to in above optimization formula as (−1y₁,−1y₂). Thruster 1005A, bow and Thruster 1005B, stern are side movementthrusters mounted in (fore) position and (aft) position on the marinevessel 1001; they are referred to in optimization formula as (−1x₃ and−1x₄). They are responsible for generating thrust in a side direction.Values are calculated in this step may be limited to make sure valuesare within the specification of the used thrusters, which will guaranteefor a stable control behavior.

In some embodiments, based on the location of the marine vessel 1001location, the central processing unit 1003 determines at least onedirectional torques and a required torque per drive on the marine vessel1001. Based on the location of the marine vessel 1001 location, thecentral processing unit 1003 generates an actuator 1011 signal for atleast one individual drive. The central processing unit 1003 evaluatesmovement of the marine vessel 1001.

The central processing unit may engage a thruster of the marine vessel1001. The central processing unit may engage a drive system of themarine vessel 1001. The central processing unit 1003 may determine toengage a plurality of elements of the propulsion system of the marinevessel substantially simultaneously. For example, the central processingunit 1003 may engage drive systems and thrusters to automatically movethe marine vessel to the targeted location as preselected on the touchscreen monitor relating to a final location between the two saidexternal objects.

The central processing unit may determine an instruction to provide tothe at least one element in response to the received mapping. By way ofexample, the CPU 1003 may transmit a signal representing a desiredrudder angle or thrust angle to the steering control system, whichresponds, thus achieving motion of the marine vessel along a desiredpath of travel to the target location selected on interactive monitor tothe targeted location.

In some embodiments, during the movement of the marine vessel 1001 andwhen the marine vessel 1001 is positioned at the final location, thecentral processing unit 1003 continuously evaluates the sensor datareceived from the optical sensors 1002 as well as the high precisioninertial measurement units (IMUs) and global positioning system (GPS)units 1010. In one embodiment, the central processing unit 1003 directsat least one element of a propulsion system of the marine vessel tomaintain a location of the marine vessel at the targeted location. Forexample, once the final location is reached, the central processing unit2003 may operate one or more actuators 1011 as required to control allthrust systems in order to maintain the marine vessel's 1001 location.

Manual interference during automatic operation may result in animmediate disengagement of the automatic system. The central processingunit 1003 may detect that a human operator has manually interfered withoperation of the marine vessel; the central processing unit 1003 maythen disengage the automatic location placement system, based upon thedetection of manual interference.

The automatic location placement system operates independently andwithout the use or requirement of any human operators upon initiation ofthe automatic location placement system.

FIGS. 12A and 12B depict block diagrams of a computing device 1200useful for practicing an embodiment of the CPU 1003. As shown in FIGS.12A and 12B, a computing device 1200 includes a central processing unit1221, and a main memory unit 1222. As shown in FIG. 12A, a computingdevice 1200 may include a storage device 1228, an installation device1216, a network interface 1218, an I/O controller 1223, display devices1224 a-n, a keyboard 1226, a pointing device 1227, such as a mouse, andone or more other I/O devices 1230 a-n. The storage device 1228 mayinclude, without limitation, an operating system and software. As shownin FIG. 12B, each computing device 1200 may also include additionaloptional elements, such as a memory port 1203, a bridge 1270, one ormore input/output devices 1230 a-1230 n (generally referred to usingreference numeral 1230), and a cache memory 1240 in communication withthe central processing unit 1221.

The central processing unit 1221 is any logic circuitry that responds toand processes instructions fetched from the main memory unit 1222. Inmany embodiments, the central processing unit 1221 is provided by amicroprocessor unit such as: those manufactured by Intel Corporation ofMountain View, CA; those manufactured by Motorola Corporation ofSchaumburg, IL; those manufactured by International Business Machines ofWhite Plains, NY; or those manufactured by Advanced Micro Devices ofSunnyvale, CA. The computing device 1200 may be based on any of theseprocessors, or any other processor capable of operating as describedherein.

Main memory unit 1222 may be one or more memory chips capable of storingdata and allowing any storage location to be directly accessed by themicroprocessor 1221. The main memory unit 1222 may be based on anyavailable memory chips capable of operating as described herein. In theembodiment shown in FIG. 12A, the processor 1221 communicates with mainmemory unit 1222 via a system bus 1250. FIG. 12B depicts an embodimentof a computing device 1200 in which the processor communicates directlywith main memory unit 1222 via a memory port 1203. FIG. 12B also depictsan embodiment in which the main processor 1221 communicates directlywith cache memory 1240 via a secondary bus, sometimes referred to as abackside bus. In other embodiments, the main processor 1221 communicateswith cache memory 1240 using the system bus 1250.

In the embodiment shown in FIG. 12A, the processor 1221 communicateswith various I/O devices 1230 via a local system bus 1250. Various busesmay be used to connect the central processing unit 1221 to any of theI/O devices 1230, including an ISA bus, an EISA bus, a PCI bus, a PCI-Xbus, or a PCI-Express bus. For embodiments in which the I/O device is avideo display device 1224, the processor 1221 may use an AdvancedGraphics Port (AGP) to communicate with the display device 1224. FIG.12B depicts an embodiment of a computing device 1200 in which the mainprocessor 1221 also communicates directly with an I/O device 1230 b via,for example, HYPERTRANSPORT, RAPIDIO, or INFINIBAND communicationstechnology.

A wide variety of I/O devices 1230 a-1230 n may be present in thecomputing device 1200. Input devices include keyboards, mice, trackpads,trackballs, microphones, scanners, cameras, and drawing tablets. Outputdevices include video displays, speakers, inkjet printers, laserprinters, and dye-sublimation printers. The I/O devices may becontrolled by an I/O controller 1223 as shown in FIG. 12A. Furthermore,an I/O device may also provide storage and/or an installation medium1216 for the computing device 1200. In some embodiments, the computingdevice 1200 may provide USB connections (not shown) to receive handheldUSB storage devices such as the USB Flash Drive line of devicesmanufactured by Twintech Industry, Inc. of Los Alamitos, CA.

Referring still to FIG. 12A, the computing device 1200 may support anysuitable installation device 1216, such as a CD-ROM drive, a CD-R/RWdrive, a DVD-ROM drive, tape drives of various formats, USB device, harddrive or any other device suitable for installing software and programs.The computing device 1200 may further comprise a storage device, such asone or more hard disk drives or redundant arrays of independent disks,for storing an operating system and other software.

Furthermore, the computing device 1200 may include a network interface1218 to interface to a network connection to one or more other computingdevices (not shown) through a variety of connections including, but notlimited to, standard telephone lines, LAN or WAN links (e.g., 802.11,Ti, T3, 56 kb, X.25, SNA, DECNET), broadband connections (e.g., ISDN,Frame Relay, ATM, Gigabit Ethernet, Ethernet-over-SONET), wirelessconnections, or some combination of any or all of the above. Connectionscan be established using a variety of communication protocols (e.g.,TCP/IP, IPX, SPX, NetBIOS, Ethernet, ARCNET, SONET, SDH, FiberDistributed Data Interface (FDDI), RS232, IEEE 802.11, IEEE 802.11a,IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, IEEE 802.15.4, BLUETOOTH,ZIGBEE, CDMA, GSM, WiMax, and direct asynchronous connections). In oneembodiment, the computing device 1200 communicates with other computingdevices via any type and/or form of gateway or tunneling protocol suchas Secure Socket Layer (SSL) or Transport Layer Security (TLS). Thenetwork interface 1218 may comprise a built-in network adapter, networkinterface card, PCMCIA network card, card bus network adapter, wirelessnetwork adapter, USB network adapter, modem, or any other devicesuitable for interfacing the computing device 1200 to any type ofnetwork capable of communication and performing the operations describedherein.

Any of the I/O devices 1230 a-1230 n and/or the I/O controller 1223 maycomprise any type and/or form of suitable hardware, software, orcombination of hardware and software to support, enable or provide forthe connection and use of multiple display devices 1224 a-1224 n by thecomputing device 1200. One ordinarily skilled in the art will recognizeand appreciate the various ways and embodiments that a computing device1200 may be configured to have multiple display devices 1224 a-1224 n.

In further embodiments, an I/O device 1230 may be a bridge between thesystem bus 1250 and an external communication bus, such as a USB bus, anApple Desktop Bus, an RS-232 serial connection, a SCSI bus, a FireWirebus, a FireWire 800 bus, an Ethernet bus, an AppleTalk bus, a GigabitEthernet bus, an Asynchronous Transfer Mode bus, a HIPPI bus, a SuperHIPPI bus, a Serial Plus bus, a SCI/LAMP bus, a Fibre Channel bus, or aSerial Attached small computer system interface bus.

A computing device 1200 of the sort depicted in FIGS. 12A and 12Btypically operates under the control of operating systems, which controlscheduling of tasks and access to system resources. The computing device1200 can be running any operating system such as any of the versions ofthe MICROSOFT WINDOWS operating systems, the different releases of theUNIX and LINUX operating systems, any version of the MAC OS forMacintosh computers, any embedded operating system, any real-timeoperating system, any open source operating system, any proprietaryoperating system, any operating systems for mobile computing devices, orany other operating system capable of running on the computing deviceand performing the operations described herein. Typical operatingsystems include, but are not limited to: WINDOWS 3.x, WINDOWS 95,WINDOWS 98, WINDOWS 2000, WINDOWS NT 3.51, WINDOWS NT 4.0, WINDOWS CE,WINDOWS XP, WINDOWS 7, WINDOWS 8, WINDOWS 10, and WINDOWS VISTA, all ofwhich are manufactured by Microsoft Corporation of Redmond, WA; MAC OSmanufactured by Apple Inc. of Cupertino, CA; Red Hat Enterprise LINUX, aLinus-variant operating system distributed by Red Hat, Inc., of Raleigh,NC; or Ubuntu, a freely-available operating system distributed byCanonical Ltd. of London, England; or any type and/or form of a UNIXoperating system, among others.

The computing device 1200 may have been modified to address challengesarising in a marine environment, including addressing conditions thatinclude increased risk of shock or vibration, or the need to provideadditional cooling or power systems isolated from the vessel's mainpower systems.

The computing device 1200 can be any workstation, desktop computer,laptop or notebook computer, server, portable computer, mobile telephoneor other portable telecommunication device, media playing device, agaming system, mobile computing device, or any other type and/or form ofcomputing, telecommunications or media device that is capable ofcommunication and that has sufficient processor power and memorycapacity to perform the operations described herein.

In this respect, before explaining at least one embodiment of theinvention in detail, it is to be understood that the invention is notlimited in its application to the details of construction and to thearrangements of the components set forth in the following description orillustrated in the drawings. The invention is capable of otherembodiments and of being practiced and carried out in various ways,including applications involving other forms of moving vehicles. Also,it is to be understood that the phraseology and terminology employedherein are for the purpose of description and should not be regarded aslimiting.

It is understood that the preceding description is given merely by wayof illustration and not in limitation of the invention and that variousmodifications may be made thereto without departing from the spirit ofthe invention as claimed.

The invention claimed is:
 1. A method for automatically navigating amarine vessel to a lateral position adjacent to a memorized lateralreference point on an external object, the method comprising:generating, at a vision ranging photography system, an optical feed;sensing, using at least one transducer, a sensed lateral reference pointon the external object; transmitting information representing the sensedlateral reference point on the external object to a processor controlunit; at the processor control unit: receiving, from the vision rangingphotography system, the optical feed; deriving, from the optical feed, amap of an area surrounding the marine vessel from the optical feed;displaying, on an interactive monitor, the map of the area surroundingthe marine vessel; receiving, from the interactive monitor, targetlocation data indicating the memorized lateral reference point;receiving the information representing the sensed lateral referencepoint on the external object; memorizing the information representingthe sensed lateral reference point on the external object as memorizedlateral reference point information, whereby the memorized lateralreference point is the same point as the sensed lateral reference point;displaying, on the interactive monitor, the map of the area surroundingthe marine vessel, including the memorized lateral reference point;directing a propulsion system of the marine vessel to automaticallynavigate the marine vessel to the lateral position adjacent to thememorized lateral reference point on the external object; and directingthe propulsion system of the marine vessel to automatically stop themarine vessel at the lateral position adjacent to the memorized lateralreference point on the external object.
 2. The method of claim 1,further comprising: at the processor control unit, directing thepropulsion system of the marine vessel to automatically maintain themarine vessel at the lateral position adjacent to the memorized lateralreference point on the external object.
 3. The method of claim 1,wherein the interactive monitor comprises a touch screen monitor.
 4. Themethod of claim 1, wherein the vision ranging photography systemcomprises at least one sensor, and wherein generating the optical feedcomprises using the at least one sensor to generate the optical feed. 5.The method of claim 4, wherein the at least one sensor comprises atleast one lidar sensor.
 6. The method of claim 1, wherein the visionranging photography system comprises at least one video sensor, andwherein generating the optical feed comprises using the at least onevideo sensor to generate the optical feed.
 7. The method of claim 1,wherein the target location data includes data selecting one of a port,starboard, forward, and reverse docking direction; and wherein directingthe propulsion system of the marine vessel to automatically navigate themarine vessel to the lateral position adjacent to the memorized lateralreference point on the external object comprises directing thepropulsion system of the marine vessel to automatically navigate themarine vessel in the selected direction.
 8. The method of claim 1,wherein the target location data includes data selecting one of a port,starboard, stern, and bow docking direction; and wherein directing thepropulsion system of the marine vessel to automatically navigate themarine vessel to the lateral position adjacent to the memorized lateralreference point on the external object comprises directing thepropulsion system of the marine vessel to automatically navigate themarine vessel in the selected direction.
 9. The method of claim 1,wherein the target location data includes data selecting one of a portside and a starboard side; and wherein directing the propulsion systemof the marine vessel to automatically navigate the marine vessel to thelateral position adjacent to the memorized lateral reference point onthe external object comprises directing the propulsion system of themarine vessel to automatically navigate the marine vessel to the lateralposition adjacent to the memorized lateral reference point on theexternal object on the selected side of the marine vessel.
 10. Themethod of claim 1: wherein the target location data includes: dataselecting one of a port, starboard, forward, and reverse dockingdirection; and data selecting one of a port side and a starboard side;and wherein directing the propulsion system of the marine vessel toautomatically navigate the marine vessel to the lateral positionadjacent to the memorized lateral reference point on the external objectcomprises directing the propulsion system of the marine vessel toautomatically navigate the marine vessel in the selected direction tothe lateral position adjacent to the memorized lateral reference pointon the external object on the selected side of the marine vessel. 11.The method of claim 1, wherein directing the propulsion system of themarine vessel to automatically navigate the marine vessel to the lateralposition adjacent to the memorized lateral reference point on theexternal object comprises automatically moving the marine vessel at acontrolled velocity toward the lateral position adjacent to thememorized lateral reference point on the external object, comprising:sensing a position of the marine vessel relative to the external object;receiving, by the processor control unit, a set of distance, position,and velocity information relating to distance, position, and velocitybetween the marine vessel and the lateral position adjacent to thememorized lateral reference point on the external object in real-time;and automatically controlling, by the processor control unit, thepropulsion system of the marine vessel to navigate the marine vessel atthe controlled velocity toward the lateral position adjacent to thememorized lateral reference point on the external object.
 12. The methodof claim 11, wherein automatically controlling the propulsion systemcomprises automatically controlling, by the processor control unit, thepropulsion system of the marine vessel to navigate the marine vessel atthe controlled velocity toward the lateral position adjacent to thememorized lateral reference point on the external object in real-time.13. The method of claim 11, wherein stopping the marine vessel at thelateral position adjacent to the memorized lateral reference point onthe external object comprises, at the processor control unit,automatically engaging the propulsion system to reduce the controlledvelocity and to stop the marine vessel at the lateral position adjacentto the memorized lateral reference point on the external object.
 14. Themethod of claim 1, further comprising, at the processor control unit,automatically engaging the propulsion system to maintain the marinevessel at the lateral position adjacent to the memorized lateralreference point on the external object.
 15. The method of claim 11,wherein automatically controlling, by the processor control unit, thepropulsion system of the marine vessel to navigate the marine vessel atthe controlled velocity toward the lateral position adjacent to thememorized lateral reference point on the external object comprises:calculating, at the processor control unit, a path of movement of themarine vessel, incorporating information about at least one obstacledetected by a hazard detection and avoidance system; determining, by theprocessor control unit, a required directional force to allocate to thepropulsion system of the marine vessel, based upon a current location ofthe marine vessel relative to the external object; and engaging, at theprocessor control unit, the propulsion system to perform collision-freepath planning and automated guided manipulation of the marine vessel tothe lateral position adjacent to the memorized lateral reference pointon the external object.
 16. A system for automatically navigating amarine vessel to a lateral position adjacent to a memorized lateralreference point on an external object, the system comprising: aprocessor control unit adapted to: receive, from a vision rangingphotography system, an optical feed; derive, from the optical feed, amap of an area surrounding the marine vessel from the optical feed;display, on an interactive monitor, the map of the area surrounding themarine vessel; receive, from the interactive monitor, target locationdata indicating the memorized lateral reference point; receive, from atleast one transducer, information representing a sensed lateralreference point on the external object; memorize the informationrepresenting the sensed lateral reference point on the external objectas memorized lateral reference point information, whereby the memorizedlateral reference point is the same point as the sensed lateralreference point; display, on the interactive monitor, the map of thearea surrounding the marine vessel, including the memorized lateralreference point; direct a propulsion system of the marine vessel toautomatically navigate the marine vessel to the lateral positionadjacent to the memorized lateral reference point on the externalobject; and direct the propulsion system of the marine vessel toautomatically stop the marine vessel at the lateral position adjacent tothe memorized lateral reference point on the external object.
 17. Thesystem of claim 16, wherein the processor control unit is furtheradapted to: direct the propulsion system of the marine vessel toautomatically maintain the marine vessel at the lateral positionadjacent to the memorized lateral reference point on the externalobject.
 18. The system of claim 16, wherein the vision rangingphotography system comprises at least one sensor, and wherein generatingthe optical feed comprises using the at least one sensor to generate theoptical feed.
 19. The system of claim 18, wherein the at least onesensor comprises at least one lidar sensor.
 20. The system of claim 16,wherein the vision ranging photography system comprises at least onevideo sensor, and wherein generating the optical feed comprises usingthe at least one video sensor to generate the optical feed.
 21. Thesystem of claim 16, wherein the target location data includes dataselecting one of a port, starboard, forward, and reverse dockingdirection; and wherein the processor control unit is adapted to, as partof directing the propulsion system of the marine vessel to automaticallynavigate the marine vessel to the lateral position adjacent to thememorized lateral reference point on the external object, direct thepropulsion system of the marine vessel to automatically navigate themarine vessel in the selected direction.
 22. The system of claim 16,wherein the target location data includes data selecting one of a port,starboard, stern, and bow docking direction; and wherein the processorcontrol unit is adapted to, as part of directing the propulsion systemof the marine vessel to automatically navigate the marine vessel to thelateral position adjacent to the memorized lateral reference point onthe external object, direct the propulsion system of the marine vesselto automatically navigate the marine vessel in the selected direction.23. The system of claim 16, wherein the target location data includesdata selecting one of a port side and a starboard side; and wherein theprocessor control unit is adapted to, as part of directing thepropulsion system of the marine vessel to automatically navigate themarine vessel to the lateral position adjacent to the memorized lateralreference point on the external object, direct the propulsion system ofthe marine vessel to automatically navigate the marine vessel to thelateral position adjacent to the memorized lateral reference point onthe external object on the selected side of the marine vessel.
 24. Thesystem of claim 16: wherein the target location data includes: dataselecting one of a port, starboard, forward, and reverse dockingdirection; and data selecting one of a port side and a starboard side;and wherein the processor control unit is adapted to, as part ofdirecting the propulsion system of the marine vessel to automaticallynavigate the marine vessel to the lateral position adjacent to thememorized lateral reference point on the external object, direct thepropulsion system of the marine vessel to automatically navigate themarine vessel in the selected direction to the lateral position adjacentto the memorized lateral reference point on the external object on theselected side of the marine vessel.
 25. The system of claim 16, whereinthe processor control unit is adapted to, as part of directing thepropulsion system of the marine vessel to automatically navigate themarine vessel to the lateral position adjacent to the memorized lateralreference point on the external object, automatically move the marinevessel at a controlled velocity toward the lateral position adjacent tothe memorized lateral reference point on the external object,comprising: sensing a position of the marine vessel relative to theexternal object; receiving, by the processor control unit, a set ofdistance, position, and velocity information relating to distance,position, and velocity between the marine vessel and the lateralposition adjacent to the memorized lateral reference point on theexternal object in real-time; and automatically controlling, by theprocessor control unit, the propulsion system of the marine vessel tonavigate the marine vessel at the controlled velocity toward the lateralposition adjacent to the memorized lateral reference point on theexternal object.
 26. The system of claim 25, wherein automaticallycontrolling the propulsion system comprises automatically controlling,by the processor control unit, the propulsion system of the marinevessel to navigate the marine vessel at the controlled velocity towardthe lateral position adjacent to the memorized lateral reference pointon the external object in real-time.
 27. The system of claim 25, whereinstopping the marine vessel at the lateral position adjacent to thememorized lateral reference point on the external object comprises, atthe processor control unit, automatically engaging the propulsion systemto reduce the controlled velocity and to stop the marine vessel at thelateral position adjacent to the memorized lateral reference point onthe external object.
 28. The system of claim 16, wherein the processorcontrol unit is further adapted to automatically engage the propulsionsystem to maintain the marine vessel at the lateral position adjacent tothe memorized lateral reference point on the external object.
 29. Thesystem of claim 25, wherein the processor control unit is adapted to, aspart of automatically controlling the propulsion system of the marinevessel to navigate the marine vessel at the controlled velocity towardthe lateral position adjacent to the memorized lateral reference pointon the external object: calculate, at the processor control unit, a pathof movement of the marine vessel, incorporating information about atleast one obstacle detected by a hazard detection and avoidance system;determine, by the processor control unit, a required directional forceto allocate to the propulsion system of the marine vessel, based upon acurrent location of the marine vessel relative to the external object;and engage, at the processor control unit, the propulsion system toperform collision-free path planning and automated guided manipulationof the marine vessel to the lateral position adjacent to the memorizedlateral reference point on the external object.
 30. The system of claim16, further comprising the interactive monitor.
 31. The system of claim30, wherein the interactive monitor comprises a touch screen monitor.32. The system of claim 16, further comprising the vision rangingphotography system, wherein the vision ranging photography system isadapted to generate the optical feed.
 33. The system of claim 16,further comprising the at least one transducer, wherein the at least onetransducer is adapted to: sense the sensed lateral reference point onthe external object; and transmit the information representing thesensed lateral reference point on the external object to the processorcontrol unit.
 34. The system of claim 16, further comprising: theinteractive monitor; the vision ranging photography system, wherein thevision ranging photography system is adapted to generate the opticalfeed; and the at least one transducer, wherein the at least onetransducer is adapted to: sense the sensed lateral reference point onthe external object; and transmit the information representing thesensed lateral reference point on the external object to the processorcontrol unit.